草庐IT

Java Tomcat 启用缓存

全部标签

从文件读取时的 java.net.URL 缓存

似乎java正在对URL(和文件)进行某种缓存。例如我的类路径中的jar文件中有一个文件“resourcs.txt”。这个文件的内容是:“版本1”newjava.io.BufferedReader(newjava.io.InputStreamReader(newURL("jar","","file:test.jar!/resourcs.txt").openConnection().getInputStream())).readLine()返回“版本1”(如预期的那样)我将文件内容更改为“版本2”并再次调用此代码。我仍然得到“版本1”我怎样才能清除这个“缓存”。注意:我发现它只发生在Li

java - 如何迭代缓存条目

我在独立环境中使用Spring3.1。我正在使用@Cachable注释缓存我的条目。有时我需要遍历缓存列表以获取特定值(不是键)。所以我设法检索了缓存列表,但我如何迭代它的元素。privateClientDTOgetClientDTOByClientId(IntegerclientId){CacheclientCache=null;try{clientCache=ehCacheCacheManager.getCache("client");//needheretoiterateonclientCache.how?}catch(Exceptione){log.error("Couldnt

java - 是否应该启用 Checkstyle 中的 RequireThis 检查?

其中一个内置的Checkstyle检查是RequireThis,只要您不将this.添加到本地字段或方法调用,它就会关闭。例如,publicfinalclassExampleClass{publicStringgetMeSomething(){return"Something";}publicStringgetMeSomethingElse(){//willviolateCheckstyle;shouldbethis.getMeSomething()returngetMeSomething()+"else";}}我正在纠结这张支票是否合理。在上面的示例中,ExampleClass是最终

java - 浅层平等和深层平等有什么区别?这如何应用于缓存?

在我的笔记中发现了以下内容,但我无法理解:Primitivetypewrapperclassesimplementcachingforalimitednumberofvalues.Thisguaranteesthatalimitednumberofdeeplyequalwrapperobjectsarealsoshallowlyequal:Ifo1.equals(o2)theno1==o2.Forexample,newInteger(0)==newInteger(0).Ingeneralthisdoesnotalwayswork.Forexample,newInteger(666)==

java缓存hashmap每天过期

我想要一个HashMap,每天午夜,缓存都会过期。请注意,它是J2EE解决方案,因此多个线程可以访问它。用Java实现它的最佳方法是什么? 最佳答案 虽然其他建议也可以用来计算过期时间,但请务必注意:hashmap的过期可以延迟完成即没有任何监控线程!实现过期的最简单方法如下:1)扩展HashMap,并创建一个本地nextMidtime(Long)变量,在构造函数中初始化为System.currentTime....。这将被设置为等于下一个午夜时间,以毫秒为单位...2)将以下代码段添加到“containsKey”和“get”方法(

java - 我们可以根据任何标志的值或通过配置文件启用或禁用方面吗?

我在pom.xml中添加了以下依赖org.springframeworkspring-aop${spring.version}org.aspectjaspectjrt1.8.5org.aspectjaspectjweaver1.8.5并在appContext.xml中启用AspectJ,如下所示:并定义aspect如下:@Component@AspectpublicclassAuthenticationServiceAspect{@Before("execution(*com.service.impl.AuthenticationServiceImpl.*(..))")publicvo

java - 如果我在 Spark 中两次缓存相同的 RDD 会发生什么

我正在构建一个通用函数,它接收一个RDD并对其进行一些计算。由于我在输入RDD上运行了多个计算,所以我想缓存它。例如:publicJavaRDDfoo(JavaRDDr){r.cache();JavaRDDt1=r...//SomecalculationsJavaRDDt2=r...//Othercalculationsreturnt1.union(t2);}我的问题是,因为r给我它可能已经或可能没有被缓存。如果它被缓存并且我再次对其调用缓存,将创建一个新的缓存层,这意味着t1和t2计算出我将有两个r的实例在缓存中?或者willspark会意识到r被缓存并会忽略它?

java - Java synchronized 关键字是否刷新缓存?

仅限Java5及更高版本。假设一台多处理器共享内存计算机(您现在可能正在使用一台)。这是一个单例延迟初始化的代码:publicfinalclassMySingleton{privatestaticMySingletoninstance=null;privateMySingleton(){}publicstaticMySingletongetInstance(){if(instance==null){synchronized(MySingleton.class){if(instance==null){instance=newMySingleton();}}}returninstance;

java - 如何在jsp中以编程方式清除浏览器缓存?

在我的网络应用程序中,由于浏览器缓存存在一些问题。如何在加载我的jsp页面时清除浏览器缓存?如何在jsp页面中包含清除缓存代码? 最佳答案 您可以在JSP中以这种方式防止缓存,但无法以编程方式清除缓存: 关于java-如何在jsp中以编程方式清除浏览器缓存?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/11337785/

java - 选择一个缓存实现,还是自己动手?

我正在做一个JavaEE应用程序,我已经得出结论,我需要为我的对象缓存。我目前的要求并不比某种键值存储复杂多少,可能是可以处理一棵树的东西。编写一个包含一个或多个映射的简单自定义静态/单例类是很诱人的。但是,由于有几个实现或多或少与此类似(我想到了Memcached),我开始怀疑使用Memcached一定有一些附加值,而不仅仅是我自己的实现。所以,我想问问关于这个的想法:当我可以做我自己的静态数据时,为什么我应该选择现成的缓存?反之亦然;当我可以拿起现成的缓存时,为什么还要写一个静态类? 最佳答案 有许多缓存实现,既有开源的,也有商